abstract class Cache<T> {
  getBykey(String key);
  void setByKey(String key, T value);
}

class FileCache<T> implements Cache<T> {
  Map data = new Map();
  @override
  getBykey(String key) {
    print("key: ${data[key]}");
  }

  @override
  void setByKey(String key, T value) {
    data[key] = value;
    print('key: ${key}, value: ${value}, Map: ${data}');
  }
}

void main() {
  FileCache loacl = FileCache<String>();
  loacl.setByKey('12','151202..');
  loacl.getBykey('12');
}
